﻿

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.UI.WebControls;
using Domain.Entidades;
using Domain.Interfaces.Repositorios;
using Domain.Interfaces.Servicos;

namespace Domain.Servicos
{
    public class VW_noticiasService : ServiceBase<VW_noticias>, IVW_noticiasService
    {
        private readonly IVW_noticiasRepository _noticiasRepository;
        private readonly IUsuarioService _usuarioservice;

        public VW_noticiasService(IVW_noticiasRepository noticiasRepository,IUsuarioService usuarioservice)
            : base(noticiasRepository)
        {
            _noticiasRepository = noticiasRepository;
            _usuarioservice = usuarioservice;
        }
        public IEnumerable<VW_noticias> busca_noticias(DateTime data1, DateTime data2)
        {
            return  _noticiasRepository.busca_noticias(data1, data2);

        }
        public void Inserir(noticia not)
        {

            try
            {
                _noticiasRepository.Inserir(not,_usuarioservice.GetUsuarioLogado(0));
            }
            catch (Exception ex)
            {
                
                throw ex;
            }

        }
        public void Editar(noticia not)
        {

            try
            {
                _noticiasRepository.Editar(not, _usuarioservice.GetUsuarioLogado(0));
            }
            catch (Exception ex)
            {

                throw ex;
            }

        }
        public void deletar(int codigo)
        {

            try
            {
                _noticiasRepository.deletar(codigo,_usuarioservice.GetUsuarioLogado(0));
            }
            catch (Exception ex)
            {

                throw ex;
            }

        }
        public noticia carrega_busca(int codigo)
        {

            try
            {
               return  _noticiasRepository.carrega_busca(codigo);
            }
            catch (Exception ex)
            {

                throw ex;
            }

        }

        public VW_noticias ver_noticia(int codigo)
        {
            try
            {
                return _noticiasRepository.ver_noticia(codigo);
            }
            catch (Exception ex)
            {
                
                throw ex;
            }


        }


    }
}
